package br.com.insight.consultoria.apresentacao.curriculo;

import java.util.ArrayList;
import java.util.List;

import javax.faces.event.ActionEvent;

import br.com.insight.consultoria.apresentacao.messagebean.InsightMB;
import br.com.insight.consultoria.entity.CursoExtraCurricular;
import br.com.insight.consultoria.entity.Usuario;
import br.com.insight.consultoria.erro.exception.InsightException;
import br.com.insight.consultoria.negocio.fachada.cursoextracurricular.FachadaCursoExtraCurricular;

public class CurriculoCursosExtraCurricularesMB extends InsightMB{
	
	private FachadaCursoExtraCurricular fachadaCursoExtraCurricular;
	private CursoExtraCurricular cursoExtraCurricular;
	
	public void inserirCursosExtraCurriculares(ActionEvent e) throws InsightException{
		getFachadaCursoExtraCurricular().inserir(cursoExtraCurricular);
		setCursoExtraCurricular(null);
	}
	
	public void excluirCursosExtraCurriculares(ActionEvent e) throws InsightException{
		getFachadaCursoExtraCurricular().excluir(cursoExtraCurricular);
	}
	
	public void carregaCursosExtraCurruculares(ActionEvent e) throws InsightException{
		setCursoExtraCurricular(getFachadaCursoExtraCurricular().getCursoExtraCurricular(cursoExtraCurricular.getId()));	
	}
	
	public FachadaCursoExtraCurricular getFachadaCursoExtraCurricular() {
		return fachadaCursoExtraCurricular;
	}
	
	public void setFachadaCursoExtraCurricular(
			FachadaCursoExtraCurricular fachadaCursoExtraCurricular) {
		this.fachadaCursoExtraCurricular = fachadaCursoExtraCurricular;
	}
	
	public CursoExtraCurricular getCursoExtraCurricular() {
		Usuario usuario=new Usuario();
		usuario.setId(new Long("12345678901"));
		
		if(cursoExtraCurricular==null)
			cursoExtraCurricular=new CursoExtraCurricular();
		cursoExtraCurricular.setUsuario(usuario);
		return cursoExtraCurricular;
	}
	
	private void setCursoExtraCurricular(CursoExtraCurricular cursoExtraCurricular) {
		this.cursoExtraCurricular = cursoExtraCurricular;
	}
	
	public List<CursoExtraCurricular> getListaCursosExtraCurriculares() throws InsightException{
		Usuario usuario=new Usuario();
		usuario.setId(new Long("12345678901"));
		
		List<CursoExtraCurricular> lista=new ArrayList<CursoExtraCurricular>();
		for (CursoExtraCurricular curricular: getFachadaCursoExtraCurricular().pesquisar(usuario)) {
			lista.add(curricular);
		}
		return lista;
	}

}
